package com.bsoft.ecommerce;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
/*
 基于服务器的身份认证
   最为传统的做法 客户端存储 Cookie（一般Session id )  服务器存储Session

   Session 是每次用户认证通过以后 服务器需要创建一条记录保存用户信息   通常是在内存中  随着认证通过的用户   通常是在内存中 随着认证通过的用户越来越多 服务器的这里的开销就会越来越大

    在不同的域名之前切换时 请求可能会被禁止 即跨域问题



    token  服务器的身份认证

    解析方法  JWT 使用算法直接解析得到用户信息  Session 需要额外的数据映射 实现匹配
   管理 方法  JWT 只有过期时间的限制 Session 数据保存在服务器 可控性更强
   垮平台  JWT就是一段字符串 可以任意传播   Sesion 垮平台需要统一的解析平台 较为繁琐


 */




/*
  JWT 由三个部分组成  Header Payload  Signnature
  Header 由两部分(Token类型 。加密算法名称) 组成并使用Base64 编码
  Payload kv 形式数据  授权的话就是token 信息

  Signature为了得到签名部分 你必须有编码过的Header 编码过的payLoad





 */
@EnableJpaAuditing
@EnableDiscoveryClient
@SpringBootApplication
public class AuthorityCenter {
    public static void main(String[] args) {
        SpringApplication.run(AuthorityCenter.class, args);
    }
}
